Release 10.1A: OpenEdge Development:
Open Client Introduction and Programming


Accessing an AppServer directly without proxies

For .NET and Java Open Clients, OpenEdge provides a means for you to access application services directly on an AppServer without the need to generate proxies using ProxyGen. You can do this using an API (OpenAPI) provided with each Open Client. This Open Client OpenAPI provides a set of classes for you to access application services using general access methods.

Because these classes know nothing about the application service they are accessing, you must be familiar with all the requirements for accessing the external procedures, persistent procedures, internal procedures, and user-defined functions provided by the application service. With this information, you must set up the procedure and user-defined function signatures according to application service requirements in your client code at run time.

You can use the principles of programming with proxy AppObjects and ProcObjects when accessing an AppServer using the OpenAPI. For more information, see Chapter 1 "Overview" and previous sections in this chapter. However, if you have a basic understanding of how the Progress 4GL provides application services on the AppServer and you know the programming requirements for the application service you are accessing, you have enough information to use the OpenAPI to access that application service.

For basic information on the Progress 4GL, see the sections on 4GL procedures in Chapter 1, " Overview." For information on the AppServer, see OpenEdge Application Server: Developing AppServer Applications .

Table 4–2 lists the common classes provided for use with both the .NET and Java versions of the OpenAPI . OpenEdge provides these classes to each type of Open Client in different assemblies or packages appropriate for the Open Client.

Table 4–2: OpenAPI Classes 
Class
Description
OpenAppObject 
For accessing remote external Progress 4GL procedures in an application service using the OpenAPI. It supports general functionality similar to the application-specific functionality of a proxy AppObject.
OpenProcObject 
For instantiating and accessing a remote 4GL persistent procedure using the OpenAPI, including its internal procedures and user-defined functions. It supports general functionality similar to the application-specific functionality of a proxy ProcObject.
ParamArray  
Array for passing parameters to a 4GL procedure or user-defined function.
ParamArrayMode  
Constants for specifying the mode of a 4GL procedure or user-defined function parameter (INPUT, INPUT-OUTPUT, or OUTPUT).
Parameter 
Constants for specifying the 4GL data type of a procedure or user-defined function parameter, return type, or temp-table field.

The functionality of these common classes is essentially identical for each type of Open Client, with minor variations appropriate to the client platform and implementation. In addition to the common OpenAPI classes, each Open Client has a set of classes to define ProDataSet and temp-table parameters for use with the OpenAPI that are unique to the client platform and its requirements for mapping these data objects.

The OpenAPI is documented completely for each Open Client type. For more information, see the:


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095